package com.kmxd.ams.client.search.vo;

import com.kmxd.ams.client.archive.vo.ArchiveRelationListVO;
import com.kmxd.ams.client.oss.vo.EfileRecordListVO;
import com.kmxd.ams.infra.arrange.base.SystemBO;
import io.swagger.v3.oas.annotations.media.Schema;
import java.io.Serializable;
import java.util.List;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * 数据详情
 *
 * @author nickbi
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Schema(description = "数据详情")
public class SearchViewVO<T extends SystemBO> implements Serializable {

  @Schema(description = "数据")
  private T data;

  @Schema(description = "文档列表")
  private List<T> docList;

  @Schema(description = "电子文件列表")
  private List<EfileRecordListVO> fileList;

  @Schema(description = "关联档案")
  private List<ArchiveRelationListVO> relationList;

  @Schema(description = "权限")
  private SearchAuthVO auth;
}
